table of contents
IOPERM(2) | Podręcznik programisty Linuksa | IOPERM(2) |
NAZWA¶
ioperm - ustawienie uprawnień dla portu wejścia/wyjścia
SKŁADNIA¶
#include <unistd.h> /* dla libc5 */
#include <sys/io.h> /* dla glibc */
int ioperm(unsigned long from, unsigned long num, int turn_on);
OPIS¶
Ioperm ustawia bity dostępu do portów dla procesu dla num bajtów, poczynając od adresu portu from do wartości turn_on. Użycie ioperm wymaga uprawnień roota.
W ten sposób można podać tylko pierwszych 0x3ff portów we/wy. Dla reszty trzeba użyć funkcji iopl. Prawa nie są dziedziczone przy wykonywaniu fork, lecz są przy exec. Jest to przydatne przy udzielaniu dostępu do portów dla nieuprzywilejowanych zadań.
WARTOŚĆ ZWRACANA¶
Po pomyślnym zakończeniu zwracane jest zero. Po błędzie zwracane jest -1 i odpowiednio ustawiane errno.
ZGODNE Z¶
ioperm jest specyficzne dla Linuksa i nie powinno być używane w przenośnych programach.
UWAGI¶
Libc5 traktuje to jak wywołanie systemowe i posiada dla niego prototyp w <unistd.h>. Glibc1 nie posiada prototypu. Glibc2 posiada prototyp zarówno w <sys/io.h>, jak i w <sys/perm.h>. Należy unikać tego ostatniego, gdyż jest dostępne tylko na i386.
ZOBACZ TAKŻE¶
1993-01-21 | Linux |